#pragma once

#include <afx.h>
#include <iostream>
#include <list>
#include <string>
#include <map>

#include "Variable.h"
// #include "Statement.h"

using namespace std;

class CStatement;

class CFunction
{
public:
	CFunction();
	~CFunction();
	bool HasVariable(CString var);

	CVariable* GetReturn() { return m_Return; }

private:
	map<CString, CVariable*> m_Arguments;
	map<CString, CVariable*> m_Vars;
	list<CStatement*> m_Statements;
	CVariable* m_Return;
	CString m_Name;
};